this._sessionUpdated();
}
- _updateActionsVisibility() {
- let visible = (this._settingsAction.visible ||
- this._orientationLockAction.visible ||
- this._lockScreenAction.visible ||
- this._altSwitcher.actor.visible);
-
- this.buttonGroup.visible = visible;
- }
-
_sessionUpdated() {
this._settingsAction.visible = Main.sessionMode.allowSettings;
}
this.menu.addMenuItem(item);
-
- this._settingsAction.connect('notify::visible',
- () => this._updateActionsVisibility());
- this._orientationLockAction.connect('notify::visible',
- () => this._updateActionsVisibility());
- this._lockScreenAction.connect('notify::visible',
- () => this._updateActionsVisibility());
- this._altSwitcher.actor.connect('notify::visible',
- () => this._updateActionsVisibility());
+ let visibilityGroup = [
+ this._settingsAction,
+ this._orientationLockAction,
+ this._lockScreenAction,
+ this._altSwitcher.actor,
+ ];
+
+ for (let actor of visibilityGroup) {
+ actor.connect('notify::visible', () => {
+ this.buttonGroup.visible = visibilityGroup.some(a => a.visible);
+ });
+ }
}
_onSettingsClicked() {